I am experimenting with putting visibility-default attributes on all struct/classes in libc++. This checkin decorates only basic_string and vector as an experiment, and for review by those in this audience that might know more about visibilty than I do. If I get no negative feedback on this procedure I will begin to decorate the entire library in this way. git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@113590 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/include/iosfwd b/include/iosfwd index a4d3f38..f9ca1a6 100644 --- a/include/iosfwd +++ b/include/iosfwd
@@ -92,8 +92,8 @@ _LIBCPP_BEGIN_NAMESPACE_STD -template<class _CharT> struct char_traits; -template<class _Tp> class allocator; +template<class _CharT> struct _LIBCPP_VISIBLE char_traits; +template<class _Tp> class _LIBCPP_VISIBLE allocator; template <class _CharT, class _Traits = char_traits<_CharT> > class basic_ios; @@ -164,7 +164,7 @@ template <class _CharT, // for <stdexcept> class _Traits = char_traits<_CharT>, - class _Allocator = allocator<_CharT> > class basic_string; + class _Allocator = allocator<_CharT> > class _LIBCPP_VISIBLE basic_string; typedef basic_string<char, char_traits<char>, allocator<char> > string; typedef basic_string<wchar_t, char_traits<wchar_t>, allocator<wchar_t> > wstring;